home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Cream of the Crop 25
/
Cream of the Crop 25.iso
/
bbs
/
mbln301.zip
/
DECCA.DOC
< prev
next >
Wrap
Text File
|
1996-01-27
|
7KB
|
144 lines
DECCA, an user friendly interface to Compiled DECCA v1.20c Gamma
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
DECCA stands for Door-interface Embeded Command Compiler Advanced, it
provides a simple way to interface with a door's ansi/avatar/tty formats.
Note that DECCA is a true script compiler, and *not* a just a macro language!
DECCA now is slightly more intellegent stating where errors in the compile
can occur, and the tokens that produced them.
──────────────────────────────────────────────────────────────────────────────
A .DEC file might be:
[| Test.dec, a simple example -- This is a comment btw |]
[lightblue]Hiya! I'm in blue [blue]N[green]e[cyan]a[red]t[magenta]!
[cyan]And my phone number is: [phone][repeat][beep][10] and my work is: [workphone]
[hi]More [[Y/n]? [lo][anykey][readkey][choice]Y Yes
[choice]N No
And there you go. DECCA is designed mainly for myself, but I figured
I'd release it so that any sysop can custom configure the menus to their
tastes'. Note that you should not use ascii characters 25, 22, 21 as these
are control codes for DECCA. Stay away from them and there should be no
problem. I should note that DECCA can't have more than 1024 labels on
the go, so just make sure you don't approach that number of labels and
there won't be a problem.
══════════════════════════════════════════════════════════════════════════════
Here's the current DECCA commands:
──────────────────── Available Colour Commands ─────────────────────────────
BLACK BLUE GREEN CYAN
RED MAGENTA BROWN LIGHTGRAY
DARKGRAY LIGHTBLUE LIGHTGREEN LIGHTCYAN
LIGHTRED LIGHTMAGENTA YELLOW WHITE
── I hope you don't need explaination there, if you do these are the colours
that are standardly available for <colour> and <colour1> on <colour2>
commands. There are also "LIGHTGREY" and "GREY", and "GRAY" all meaning
the same as "LIGHTGRAY". In addition there is "DARKGREY" which means
the same as "DARKGRAY". This is done to support Canadian & British
spellings of these words.
──────══════ Miscelleneous ══════──────
────────────── DECCA non-specific commands (avatar codes) ────────────────────
| Comment | ── Commenting the code eg, [| This is a comment |]
CLS ── Clears Screen
BLINK ── Makes current colour blink
HI ── Turns on high intensity
LO ── Turns off high intensity
S ── Save current colour to memory
L ── Load colour from memory
UP ── Moves cursor up one position
DOWN ── Moves cursor down one position
LEFT ── Moves cursor left one position
RIGHT ── Moves cursor right one position
HOME ── Homes cursor
CLREOL ── Clear to end of line
BEEP ── Generates a beep
BS ── Backspaces once
CR ── Carriage return
LF ── Linefeed
ENTER ── New line
<Colour> ── Changes colour to black, red, white whatever
<Colour1> ON <colour2> ── Changes colour to colour1 on background colour2
LOCATE <y> <x> ── Locates the cursor to place y, x
REPEAT <Char> <times> ── Repeats <char> <times> eg [repeat]H[7] or
[repeat][beep][5] etc. MUST be one character!
REPEATSEQ<length>string<times>
── Repeats String of length <length> <times> times
number ── Will make ASCII character number "number" 0..255
────────────────────── DECCA Specific Commands ───────────────────────────────
ACCESS ── The users access (1..100)
ALIAS ── Displays user's alias
BAUDRATE ── The users bps
CLEARINPUT ── Clears keyboard and modem input
COMPORT ── The comport being used
CITY ── Displays user's city
DATE ── Current date
ERASE<file><space> ── Erases a file
EXECUTE<file><space> ── Executes a .com or .exe (dos .exe)
FORCEINDEX<index><sp> ── Forces an index number
GOSUB (label) ── Jumps to a label, and return will return to the
place of jump
GOTO (label) ── Jumps to a label
IFKEYPRESSED ── If keypressed then execute the rest of the line
IFINDEX<index><space> ── Executes rest of the line if it's index <index>
LONGPAUSE ── 1 Second pause
MOREON ── Turns moreprompting on (normally off)
MOREOFF ── Turns moreprompting off (normally off)
NAME ── Displays user's name
NODE ── Displays current node number
PASSWORD ── Displays user's password
PAUSE ── ½ Second pause
PHONE ── Displays user's phone number
REMAIN ── Remaining time in mins
SAVEPOS ── Save position
RESTPOS ── Restore position
SHORTPAUSE ── ¼ Second pause
STUFFKEYS<keys><space> ── Stuffs keys into keyboard. Use | for enter.
TIME ── Current time
QUIT ── Quits dec file right there
WORKPHONE ── The users work phone number
/LABEL ── Defines a label
RANDOM<stuff><space> ── Stuffs a random character in the keyboard buffer
to be read by readkey. Great kludge for playing
with random choices.
RETURN ── Returns to the last gosub (implemented!)
IFEXIST<file> <rest> ── Executes rest only if file exists
IFDEXIST<dir> <rest> ── Same as ifexit, but with directories
READLN ── Reads 80 characters
IFENTERED<ch> <rest> ── Check above
DISPFILE ── Displays a file.. (DECCA *.EXE format)
MENU ── Sets choices for Readkey
ANYKEY ── Allows any key to be pressed for menu choice
MENUONLY ── Allows only ones on the menu to be pressed
READKEY ── Reads a key from the user
CHOICE<choice> <rest> ── Executes rest of line only if statement concurs
LASTKEY ── Writes lastkey stroke
@ -- Not impletemented.
══════════════════════════════════════════════════════════════════════════════
For a programmers reference to DECCA please address to: John Stephenson
PO box 1573
Kingston, Ont
K7L 5C8, Canada
When DECCA is used in third party developers no roalty fee is anticipated,
but if you decide to use the actual DECCA compiler included with your
software please feel to give some netmail saying "Hey dude I'm using your
DECCA script language for such and such, thank you for letting me use it
for free!".